
   1 CLEAR ;NT=1;&(9)=-1;BC=0;FC=67;CY=8;CX=-41;PRINT "BOARD SIZE 4-9?";B=KP-48;F=B-1;A=F×F;R=0;G=0;GOTO 31
   2 Q=Y;IF F<Y Q=F
   3 I=Q+3;IF PX(X-3,Q)IF PX(X-6,Q+3)IF PX(X-3,Q+6)H=X-3;GOSUB 9
   4 IF PX(X+3,Q)IF PX(X+6,Q+3)IF PX(X+3,Q+6)H=X+3;GOSUB 9
   5 IF R=1R=0;GOTO 36
   6 P=P+1;IF P>N P=1
   7 BOX -40,-24,72,8,2;CY=-24;CX=-77+P×12;PRINT "▼";GOTO 36
   8 BOX X,Y,3,3,3;RETURN 
   9 IF P=1BOX H,I,3,1,1;BOX H,I,1,3,1
  10 IF P=2BOX H,I,3,3,1;BOX H,I,3,1,2;BOX H,I,1,3,3
  11 IF P=3BOX H,I,3,3,3
  12 IF P=4BOX H,I,1,3,3
  13 IF P=5BOX H,I,3,1,3
  14 IF S=99RETURN 
  15 S=S+1;@(P)=@(P)+5;R=1;CX=-37;CY=38-P×8;PRINT #1,@(P);IF S=AGOSUB 17;PRINT "GAME OVER";IF KPRUN 
  16 RETURN 
  17 CY=38;CX=15;RETURN 
  21 V=0;FOR T=CTO C-(6×(B-2))STEP -6;FOR Z=WTO W+(6×(B-2))STEP 6;V=V+1;J=4;IF GGOTO 29
  22 IF PX(Z+3,T-3)GOTO 30
  23 IF PX(Z+3,T-6)=0J=J-1;IF O O=4;BOX Z+3,T-6,5,1,1;RETURN 
  24 IF PX(Z+6,T-3)=0J=J-1;IF O O=2;BOX Z+6,T-3,1,5,1;RETURN 
  25 IF PX(Z,T-3)=0J=J-1;IF O O=1;BOX Z,T-3,1,5,1;RETURN 
  26 IF PX(Z+3,T)=0J=J-1;IF O O=3;BOX Z+3,T,5,1,1;RETURN 
  27 IF GGOTO RND (4)+22
  28 IF J=U D=V;BOX 40,38,72,8,2;GOSUB 8;G=1;GOTO 21
  29 IF G X=Z;Y=T;GOSUB 8;MU=16;GOSUB 8;IF D=V O=1;GOSUB 27;G=0;GOTO 130
  30 NEXT Z;NEXT T;F=F+1;GOTO F
  31 CX=-27;PRINT "# PLY.1-4?";N=KP-48;PRINT "     COMPUTER:1=Y*0=N?";K=KP-48;CLEAR ;C=24-((9-B)×3)
  32 D=17+((9-B)×3);X=D;Y=C;IF (B<4)+(N>4)+(K>1)GOTO 1
  33 N=N+K;CX=-55;CY=38;PRINT "SCORE";FOR P=1TO 5;S=99;@(P)=0;H=-67;I=38-P×8;GOSUB 9;CX=-55;PRINT "#",#1,P,"=";NEXT P
  34 BOX 0,0,3,84,1;CY=-16;PRINT " PLAYER TURN";PRINT ;PRINT "  1 2 3 4 5
  35 P=1;S=0;FOR Z=1TO B;FOR U=DTO D+F×6STEP 6;BOX U,C,1,1,1;NEXT U;C=C-6;NEXT Z;GOSUB 8;C=Y;W=X;GOTO 7
  36 O=0;IF KIF P=NGOSUB 17;PRINT "   HMM..";F=150;GOTO F
  37 IF TR(P)LINE X,Y,4=XY;E=X;F=Y;GOTO 60
  38 L=0;M=0;IF JX(P)=0IF JY(P)=0GOTO 37
  39 L=JX(P)×6;M=JY(P)×6;IF PX(X+L,Y+M)=0MU=1;GOTO 38
  40 GOSUB 8;GOSUB 68;GOSUB 8;GOTO 38
  60 L=0;M=0;IF JX(P)L=JX(P)×6;GOTO 70
  65 IF JY(P)M=JY(P)×6;GOTO 70
  66 GOTO 60
  68 X=X+L;Y=Y+M;RETURN 
  70 IF PX(X+L,Y+M)IF PX(X+L÷2,Y+M÷2)=0GOSUB 8;GOSUB 68;LINE X,Y,1;GOSUB 8;GOTO 84
  80 CY=-32;CX=8;PRINT "ILLEGAL MOVE";BOX 42,-32,74,8,2;GOTO 38
  84 IF X=EGOTO 2
  85 Q=X;IF E<X Q=E
  90 H=Q+3;IF PX(Q,Y+3)IF PX(Q+3,Y+6)IF PX(Q+6,Y+3)I=Y+3;GOSUB 9
  95 IF PX(Q,Y-3)IF PX(Q+3,Y-6)IF PX(Q+6,Y-3)I=Y-3;GOSUB 9
 100 GOTO 5
 130 IF O<3Q=T-6;IF O=2X=Z+6
 135 IF O<3GOSUB 8;GOTO 3
 140 Q=Z;IF O=4Y=T-6
 145 GOSUB 8;GOTO 90
 150 U=3;GOTO 21
 151 U=0;GOTO 21
 152 U=1;GOTO 21
 153 U=2;GOTO 21
:RETURN ;RUN 
>